@echo off
chcp 65001 >nul
title RocketMQ项目调试部署

echo ========================================
echo    RocketMQ项目调试部署脚本
echo ========================================
echo.

echo 开始调试部署流程...
echo.

REM 步骤1: 检查Maven - 详细版本
echo [步骤1] 检查Maven环境...
echo 当前目录: %CD%
echo.

echo 尝试执行: mvn --version
echo 命令输出:
mvn --version
echo.
echo Maven命令退出代码: %errorlevel%
echo.

if %errorlevel% neq 0 (
    echo ✗ Maven检查失败
    echo 请检查Maven安装
    pause
    exit /b 1
)

echo ✓ Maven检查通过
echo.

REM 步骤2: 检查项目结构
echo [步骤2] 检查项目结构...
echo.
echo 检查pom.xml:
if exist pom.xml (
    echo ✓ pom.xml 存在
    echo 文件大小: 
    dir pom.xml | findstr "pom.xml"
) else (
    echo ✗ pom.xml 不存在
    pause
    exit /b 1
)
echo.

echo 检查Dockerfile:
if exist Dockerfile (
    echo ✓ Dockerfile 存在
) else (
    echo ✗ Dockerfile 不存在
    pause
    exit /b 1
)
echo.

echo 检查broker.conf:
if exist broker.conf (
    echo ✓ broker.conf 存在
) else (
    echo ✗ broker.conf 不存在
    pause
    exit /b 1
)
echo.

REM 步骤3: 尝试Maven构建
echo [步骤3] 尝试Maven构建...
echo 执行: mvn clean package -DskipTests
echo.

echo 开始构建，请等待...
mvn clean package -DskipTests

echo.
echo Maven构建退出代码: %errorlevel%
echo.

if %errorlevel% neq 0 (
    echo ✗ Maven构建失败
    echo 请检查构建错误信息
    pause
    exit /b 1
)

echo ✓ Maven构建成功
echo.

REM 步骤4: 检查构建结果
echo [步骤4] 检查构建结果...
echo.
echo target目录内容:
dir target
echo.

REM 查找jar包
set JAR_FOUND=false
for %%f in (target\*.jar) do (
    echo 找到jar包: %%f
    set JAR_FOUND=true
)

if "%JAR_FOUND%"=="false" (
    echo ✗ 未找到jar包
    pause
    exit /b 1
)

echo ✓ 找到jar包
echo.

REM 步骤5: 准备部署文件
echo [步骤5] 准备部署文件...
if exist deploy rmdir /s /q deploy
mkdir deploy

echo 复制jar包...
for %%f in (target\*.jar) do (
    echo 复制: %%f -^> deploy\app.jar
    copy "%%f" deploy\app.jar >nul
)

echo 复制Dockerfile...
copy Dockerfile deploy\ >nul

echo 复制broker.conf...
copy broker.conf deploy\ >nul

echo.
echo 部署目录内容:
dir deploy
echo.

REM 步骤6: 测试SSH连接
echo [步骤6] 测试SSH连接...
echo 测试连接到服务器: %SERVER_IP%
echo.

REM 设置变量（这里重新设置，避免之前的问题）
set SERVER_IP=192.168.211.139
set SERVER_USER=root
set SSH_KEY=C:\Users\Teriberka\.ssh\my_linux_key

echo 服务器信息:
echo - IP地址: %SERVER_IP%
echo - 用户名: %SERVER_USER%
echo - SSH密钥: %SSH_KEY%
echo.

echo 测试SSH连接...
ssh -i "%SSH_KEY%" %SERVER_USER%@%SERVER_IP% "echo 'SSH连接测试成功'"

if %errorlevel% neq 0 (
    echo ✗ SSH连接失败
    echo 请检查SSH配置
    pause
    exit /b 1
)

echo ✓ SSH连接成功
echo.

echo ========================================
echo           调试完成！
echo ========================================
echo.
echo 所有检查都通过了！
echo 现在可以运行完整的部署脚本
echo.

pause

